Identity Management in Internet of Things with Blockchain
225
• Asymmetric cryptography (also known as public–private key cryptography),
which is applied roughly for giving the end users an identity in the network,
and most importantly, for signing transactions upon the invocation of a smart
contract.
Thehashingalgorithmsensuretheimmutabilityoftheledgerviathecreationofthe
Merkle tree, consistency to the network and enhanced security [34]. The consensus
algorithm Proof-of-Work (PoW) is based on a hashing process that must result in a
hash with specific characteristics (e.g., the first 5 digits should be zero). Hashing is
mostly used in internal operations within the network.
The second type of cryptography is extremely important to be used properly
from the corresponding wallet interacting with the network, especially considering
the implementation of a decentralized IAM system. Wallets are the only known
programmable tool capable of providing ownership of identity in a blockchain
system, acting as the interface between the entities and the ledger. The authors of [34]
having also analyzed the different types of attacks which can happen in a blockchain
network show that there are at least three attacks that can compromise the identity of
a user, not only by exposing their personal data but also by endangering the integrity
of the network as well.
In the context of IoT, the use of cryptographic mechanisms must be reconsid-
ered due to the fact that IoT devices have limited processing power, most of which
will be used for their primary functions (e.g., measuring data from the physical
world or having a mechanical part which must change state). The implementation of
blockchain-centric cryptography methods in an IoT system is yet at its early stages.
Over the next sections of this chapter, a short presentation of Zero-Knowledge Proofs
(ZKPs) and Decentralized Public Key Infrastructure (DPKI) will take place from
a blockchain perspective. ZKPs utilizing hashing algorithms and being performed
off the blockchain network can provide anonymity to the authorization process,
providing proofs instead of identity information. On the other hand, integrating DKPI
offers all the advantages of the traditional PKI technology but in a decentralized
manner.
4.1
Zero-Knowledge Proofs (ZKP)
Zero-Knowledge Proofs (ZKPs) have revolutionized modern cryptography and they
can significantly upgrade blockchain technologies if used properly. ZKPs have
emerged based on mathematical theorems and they constitute a large part of proof
systems theory, where knowledge as a concept is statistically measured [35].
Zero-Knowledge systems function in an environment where a prover must
convince a verifier about the validity of a statement, without revealing any addi-
tional information besides the statement itself. The verifier must probabilistically
come to a conclusion where (s)he is convinced that the prover’s statement is honest.
A Zero-Knowledge statement is to satisfy three explicit principles: